#ifndef SCENE_H
#define SCENE_H
#include "Camera.h"
#include "Light.h"
#include "Object.h"
#include "Image.h"
#include "pVect.h"
#include <list>

class Scene
{
    public:
        Color fond;
        int aoRayon;
        Camera camera;
        std::list<Light*> listLight;
        std::list<Object*> listObject;

        Scene();
        virtual ~Scene();

        Image *render(char* fichierE, char* fichierS);
        Color colorer(HitPoint* hp, int recurs);    //détermine la couleur du pixel où il y a le hitPoint
        Color lancer(pVect position, pVect rayon, int recurs,Object * dontTest = 0);
        Color ambientOcclusion(HitPoint* hp);
    protected:
    private:
};

#endif // SCENE_H
